package pers.mine.service.inter;

import java.sql.SQLException;

import pers.mine.po.Order;
import pers.mine.vo.Cart;

/**
 * 购物车服务
 * 
 * @author Mine
 * @since 2016年10月20日_下午10:58:33
 */
public interface CheckOutService {
	/**
	 * 验证操作,验证指定(ps:用户余额是否验证可控制)以及购物车商品数量等合法性
	 * 
	 * @param mid
	 *            用户id
	 * @param cart
	 *            购物车信息
	 * @return 生成一份订单,null表示验证未通过
	 */
	public Order doCheck(Integer mid, Cart cart, boolean valiBalance);

	/**
	 * 执行付款以及提交订单操作 ps:这里应该使用事务管理
	 * 
	 * @param mid
	 *            用户id
	 * @param cart
	 *            购物车信息
	 * @return 操作结果
	 * @throws SQLException
	 */
	public boolean checkOut(Order order) throws SQLException;

}
